#pragma once
#include <windows.h>
#include <list>
#include <iostream>
using namespace std;

#ifndef _WIN64
    #define INLINE_HOOK_BYTES       5
    #define INLINE_HOOK_OFFSET      1
#else
    #define INLINE_HOOK_BYTES       12
    #define INLINE_HOOK_OFFSET      2
#endif

#ifndef _WIN64
    #define IAT_HOOK_ADDRESS_SIZE   4
#else
    #define IAT_HOOK_ADDRESS_SIZE   8
#endif

#define NAMESPACE_BEGIN(_name) namespace _name {
#define NAMESPACE_FINAL(_name) }
